chore(ci): add lowest-deps PHPUnit job to lock minimum constraints#2308
chore(ci): add lowest-deps PHPUnit job to lock minimum constraints#2308ruflin wants to merge 1 commit into
Conversation
Without a `--prefer-lowest` job the minimum versions declared in `composer.json` are never tested. Add a unit-only PHPUnit job on PHP 8.1 that installs dependencies with `--prefer-lowest --prefer-stable` so any accidental tightening of a `composer.json` constraint is caught early. Functional tests intentionally stay out of this job to avoid doubling the cost of the ES-backed steps.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughA new CI workflow job, Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Review rate limit: 1/8 review remaining, refill in 50 minutes and 54 seconds.Comment |
There was a problem hiding this comment.
Pull request overview
Adds CI coverage for minimum Composer constraints by introducing a dedicated PHPUnit job that installs the lowest dependency versions, helping ensure composer.json minimums remain valid over time.
Changes:
- Add a
phpunit-lowestGitHub Actions job (PHP 8.1) intended to run unit tests against lowest dependency versions. - Update
CHANGELOG.mdto document the new CI check.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
CHANGELOG.md |
Documents the addition of the new lowest-deps PHPUnit CI job. |
.github/workflows/continuous-integration.yaml |
Adds a new phpunit-lowest job using ramsey/composer-install@v3 and runs unit tests only. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - name: 'Install dependencies with Composer (lowest)' | ||
| uses: 'ramsey/composer-install@v3' | ||
| with: | ||
| dependency-versions: 'lowest' | ||
| composer-options: '--prefer-dist --prefer-stable' | ||
|
|
| * Added support for "search after" based pagination [#1645](https://github.com/ruflin/Elastica/issues/1645) | ||
| * Added support for the `seq_no_primary_term` search option and the `if_seq_no` / `if_primary_term` index options to enable optimistic concurrency control [#2284](https://github.com/ruflin/Elastica/pull/2284) | ||
| ### Changed | ||
| * Added a `phpunit-lowest` CI job that installs dependencies with `--prefer-lowest --prefer-stable` and runs the unit tests on PHP 8.1, ensuring that the minimum constraints declared in `composer.json` keep working. |
Summary
Without a
--prefer-lowestjob the minimum versions declared incomposer.jsonare never tested. Add a unit-only PHPUnit job on PHP 8.1that installs dependencies with
--prefer-lowest --prefer-stableso anyaccidental tightening of a
composer.jsonconstraint is caught early.Functional tests intentionally stay out of this job to avoid doubling
the cost of the ES-backed steps.
Identified during a P0/P1 code-review pass.
Test plan
composer.jsonconstraint that needs bumping.
Summary by CodeRabbit